package cn.bug.greenflag.mapper;


import cn.bug.greenflag.pojo.entity.PurchaseProductInfo;
import cn.bug.greenflag.pojo.vo.PurchaseProductInfoListVO;
import cn.bug.greenflag.pojo.vo.PurchaseProductInfoVO;
import org.springframework.stereotype.Repository;

import java.util.List;


/**
 * 处理进货商品的DAO
 * @author LCL
 * */
@Repository
public interface PurchaseProductInfoMapper {

    /**
     * 添加进货商品信息
     * @return 进货商品信息
     */
    int insert(PurchaseProductInfo purchaseProductInfo);

    /**
     * 处理根据id删除进货商品信息
     * @param id 需要删除的进货商品信息id
     * @return 受影响的行数
     * */
    int deleteById(Long id);

    /**
     * 处理根据id修改进货商品信息
     * @param id 需要修改的进货商品信息的id
     * @return 受影响的行数
     * */
    int updateById(Long id);

    /**
     * 根据厂商价格查询进货商品信息
     * @param price 需要查询的厂商价格
     * @return 受影响的行数
     */
    int countByPrice(Double price);

    /**
     * 根据厂商商品查询进货商品信息
     * @param product 需要查询的厂商商品
     * @return 受影响的行数
     */
    int countByProduct(String product);

    /**
     * 根据id查询进货商品信息
     * @param id 需要查询的id
     * @return 进货商品信息
     */
    PurchaseProductInfoVO getStandardById(Long id);

    /**
     * 根据商品Id查询进货商品信息列表
     * @return 返回进货商品信息列表
     * */
    List<PurchaseProductInfoListVO> list();

}
